package dawi.fcs.servicio.factory;

import dawi.fcs.servicio.dao.ActividadDao;
import dawi.fcs.servicio.dao.ClienteDao;
import dawi.fcs.servicio.dao.ComprobantePagoDao;
import dawi.fcs.servicio.dao.ComprobantePagoDetalleDao;
import dawi.fcs.servicio.dao.DistritoDao;
import dawi.fcs.servicio.dao.DocumentoDao;
import dawi.fcs.servicio.dao.ExpedienteActividadDao;
import dawi.fcs.servicio.dao.ExpedienteActividadDocumentoDao;
import dawi.fcs.servicio.dao.ExpedienteDao;
import dawi.fcs.servicio.dao.ExpedienteParteDao;
import dawi.fcs.servicio.dao.MiscelaneosDao;
import dawi.fcs.servicio.dao.ProcesoActividadDao;
import dawi.fcs.servicio.dao.ProcesoDao;
import dawi.fcs.servicio.dao.TipoEstadoDao;
import dawi.fcs.servicio.dao.TipoProcesoCompetenciaDao;
import dawi.fcs.servicio.dao.TipoProcesoDao;
import dawi.fcs.servicio.seguridad.dao.AccionesDao;
import dawi.fcs.servicio.seguridad.dao.PerfilDao;
import dawi.fcs.servicio.seguridad.dao.UsuarioDao;

public abstract class DAOFactory {
	public static final int MYSQL = 1;
	public static final int ORACLE = 2;

	public static DAOFactory getFactorty(int bd) {
		switch (bd) {
		case MYSQL:
			return new MysqlDaoFactory();

		}
		return null;
	}

	public abstract UsuarioDao getUsuarioDao();

	public abstract TipoProcesoDao getTipoProcesoDao();

	public abstract TipoProcesoCompetenciaDao getTipoProcesoCompetenciaDao();

	public abstract TipoEstadoDao getTipoEstadoDao();

	public abstract ActividadDao geActividadDao();

	public abstract PerfilDao getPerfilDao();

	public abstract AccionesDao getAccionesDao();

	public abstract MiscelaneosDao getMiscelaneosDao();

	public abstract ExpedienteDao getExpedienteDao();

	public abstract ExpedienteActividadDao getExpedienteActividadDao();

	public abstract ExpedienteParteDao getExpedienteParteDao();

	public abstract ProcesoDao getProcesoDao();

	public abstract ProcesoActividadDao getProcesoActividadDao();

	public abstract DistritoDao getDistritoDao();

	public abstract ClienteDao getClienteDao();

	public abstract ExpedienteActividadDocumentoDao getExpedienteActividadDocumentoDao();

	public abstract DocumentoDao getDocumentoDao();
	
	public abstract ComprobantePagoDao getComprobantePagoDao();
	
	public abstract ComprobantePagoDetalleDao getComprobantePagoDetalleDao();

}
